package com.lucenly.spell.enty;

import java.util.HashMap;
import java.util.Map;

/**
 * Created by hbb on 2017/12/8 0008.
 * 一个map的对接,主要用于map，多种形式获取,用于adapter 传递数据
 */

public class BundleMap {

    private Map<String, Object> map; //用于封装网络请求的map

    public BundleMap() {
        map = new HashMap<String, Object>();
    }

    /**
     * 清空数据
     */
    public void clear() {
        if (map == null) {
            return;
        }
        map.clear();
    }

    /**
     * 塞数据
     *
     * @param key
     * @param object
     */
    public void put(String key, Object object) {
        if (map == null) {
            return;
        }
        map.put(key, object);
    }



    /**
     * 获取数据
     * String形
     */
    public String getString(String key) {
        if (map == null) {
            return null;
        }
        final Object o = map.get(key);
        try {
            return (String) o;
        } catch (ClassCastException e) {
            return null;
        }
    }

    /**
     * 获取数据
     * int形
     */
    public Integer getInt(String key) {
        if (map == null) {
            return 0;
        }
        final Object o = map.get(key);
        try {
            return (Integer) o;
        } catch (ClassCastException e) {
            return 0;
        }
    }

    /**
     * 获取数据
     * boolean形
     */
    public Boolean getBoolean(String key) {
        if (map == null) {
            return false;
        }
        final Object o = map.get(key);
        try {
            return (Boolean) o;
        } catch (ClassCastException e) {
            return false;
        }
    }
    /**
     * 获取数据
     * long形
     */
    public long getLong(String key) {
        if (map == null) {
            return 0;
        }
        final Object o = map.get(key);
        try {
            return (Long) o;
        } catch (ClassCastException e) {
            return 0;
        }
    }

    /**
     * 获取数据
     * 对象 需要转移
     */
    public Object get(String key) {
        if (map == null) {
            return null;
        }
        final Object o = map.get(key);
        return o;
    }


}
